// vim:sw=4:ai:aw

#include <stdlib.h>		// voor: rand
#include "asserts.h"		// voor: require
#include "RandomFit.h"

// iemand vraagt om 'wanted' geheugen
const Area * RandomFit::alloc(int wanted) {
	require( wanted > 0 ); // minstens "iets",
	require( wanted <= size ); // maar niet meer dan we kunnen hebben.

	int base = 0;
	if (wanted < size) { // valt er wat te "gokken" ?
		//base = rand(); // gooi dan de dobbelsteen
		//base %= (size - wanted); // maar blijf binnen de grenzen...
		base = 0;
	}
	// else er valt niets te gokken.

	return new Area(base, wanted);
	// Pas op:
	// We garanderen niet dat dat gebied helemaal vrij is,
	// dit is en blijft een "gokjes" algoritme  8-)
}

// iemand levert een gebied weer in
void RandomFit::free(const Area * ap) {
	// Omdat RandomFit helemaal niets doet aan boekhouding
	// kunnen we hier volstaan met ...
	delete ap;
}
